// pages/my-pages/staff-data/index.js
const httpUtils = require('../../../utils/httpUtils')
const ui = require('../../../utils/ui')

Page({

  /**
   * 页面的初始数据
   */
  data: {
    date: new Date().getTime(), // 支持时间戳传入
    dateText: '',
    value: '',
    actionText: '查询',
    total: 0, //分页总数
    page: 1, //分页记录数
    pageSize: 10, //分页大小
    onRefresh: true,
    staffList: [],
    // 指定选择区间起始值
    start: '2020-01-01 00:00:00',
    end: '2050-09-09 23:59:59',
    dateVisible: false,
  },

  //点击查询日期, 弹出日期选择
  showPicker: function (e) {
    let dateValue = this.data.dateText;
    console.log(dateValue)
    this.setData({
      dateVisible: true
    })
  },

  //日期选择确定按钮
  onConfirm: function (e) {
    const {
      value
    } = e.detail;
    this.setData({
      date: value,
      dateText: value,
      onRefresh: false,
      page: 1
    });
    this.hidePicker();
    this.getMyStaffFunc();
  },

  //日期选择弹窗改变事件
  onColumnChange: function (e) {
    console.log('选择时间:', e.detail.value);
  },

  //日期选择弹窗取消按钮
  hidePicker: function () {
    this.setData({
      dateVisible: false
    })
  },

  //时间格式化
  formaData: function (timer) {
    let that = this;
    const year = timer.getFullYear()
    const month = timer.getMonth() + 1 // 由于月份从0开始，因此需加1
    return `${that.pad(year, 4)}-${that.pad(month)}`
  },

  // 定义具体处理标准
  // timeEl 传递过来具体的数值：年月日时分秒
  // total 字符串总长度 默认值为2
  // str 补充元素 默认值为"0"
  pad: function (timeEl, total = 2, str = '0') {
    return timeEl.toString().padStart(total, str)
  },

  //查询店员列表
  getMyStaffFunc: function () {
    let that = this;
    var onRefresh = that.data.onRefresh; //false为重新刷新数据，true为分页累加数据
    let obj = {
      method: 'POST',
      showLoading: false,
      url: 'user/getMyShopUser',
      data: {
        'nickName': that.data.value,
        'page': that.data.page,
        'size': that.data.pageSize,
        'countItemNum': true,
        'countMonth': that.data.dateText
      }
    }
    httpUtils.request(obj).then(res => {
      console.log(res.data.message)
      if (res.data.retCode == 0) {
        var datas = res.data.data.records;
        // console.log('用户信息: ' + res.data.data)
        if (datas != null && datas.length > 0) {
          if (onRefresh) { //false为重新刷新数据，true为分页累加数据
            that.setData({
              staffList: that.data.staffList.concat(datas),
              page: res.data.data.current,
              total: res.data.data.pages
            })
          } else {
            that.setData({
              staffList: datas,
              page: res.data.data.current,
              total: res.data.data.pages
            })
          }
        } else {
          ui.showToast('没有更多数据了')
        }
      } else {
        ui.showToast(res.data.message)
      }
    }).catch(err => {
      ui.showToast('请求失败')
    });
  },

  //点击了查询按钮
  actionHandle: function () {
    this.setData({
      onRefresh: false,
      page: 1
    });
    this.getMyStaffFunc();
  },

  //输入框内容改变函数
  changeHandle: function (e) {
    this.setData({
      value: e.detail.value
    })
  },
  //输入框点击了清除按钮
  clearHandle: function (e) {
    this.setData({
      value: ''
    });
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    let that = this;
    that.setData({
      dateText: that.formaData(new Date()),
    })
    this.getMyStaffFunc();
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})